package com.gewei.dao;

import com.gewei.pojo.Order;

import java.util.List;
import java.util.Map;

/**
 * @author gewei
 */
public interface OrderDao {
    /**
     * 新增
     *
     * @param order
     */
    void add(Order order);

    /**
     * 根据条件查询
     *
     * @param order
     * @return
     */
    List<Order> findByCondition(Order order);

    /**
     * 根据预约 id 查询预约信息，包括体检人信息、套餐信息
     *
     * @param id
     * @return
     */
    Map findById4Detail(Integer id);

    /**
     * 根据日期统计预约数
     *
     * @param date
     * @return
     */
    Integer findOrderCountByDate(String date);

    /**
     * 根据日期统计预约数，统计指定日期之后的预约数
     *
     * @param date
     * @return
     */
    Integer findOrderCountAfterDate(String date);

    /**
     * 根据日期统计到诊数
     *
     * @param date
     * @return
     */
    Integer findVisitsCountByDate(String date);

    /**
     * 根据日期统计到诊数，统计指定日期之后的到诊数
     *
     * @param date
     * @return
     */
    Integer findVisitsCountAfterDate(String date);

    /**
     * 热门套餐（查询前 4 条）
     *
     * @return
     */
    List<Map> findHotSetmeal();
}
